package com.qf;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.qf.mapper.EmpMapper;
import com.qf.pojo.Emp;
import com.qf.utils.MyBatisUtils;
import org.junit.Test;

import java.util.List;

/**
 * select * from 表 where ....     【 limit 开始行,每页数】 实现动态分页
 *
 * 1、总条数
 * 2、结果集
 * 3、总页数
 * 4、每页数 （外面传递过来的）
 * 5、当前页（外面传递过来的）
 * 6、是否有上一页
 * 7、是否有下一页
 * 8、是否为最后一页
 * 9、是否是第一页
 * .....
 * PageHelper：分页小助手之后 上面的内容瞬间全有了
 *
 * @author lixu
 */
public class MybatisLimit {


    @Test
    public void pageInfo(){
        EmpMapper mapper = MyBatisUtils.getMapper(EmpMapper.class);
        //当前页
        //每页数
        PageHelper.startPage(2,3); //共5条
        // 配置拦截器

        //执行查询之前
        List<Emp> xixi = mapper.findAll("xixi");//select .......   limit (1-1)*3,3
        //xixi.stream().forEach(System.out::println);

        //分页对象
        PageInfo<Emp> info = new PageInfo<>(xixi);//查询总条数 计算总页数 ........


        System.out.println("总条数：" + info.getTotal());
        System.out.println("总页数：" + info.getPages());
        info.getList().stream().forEach(System.out::println);

    }

}
